#ifndef KDTREE_LEARNER_H
#define KDTREE_LEARNER_H

#include "KDTreeLearner.h"
#include "SimpleTFGeneralizer.h"
#include "MatlabDrawer.h"

using namespace matlab; 

#include "KDTree.h"
using namespace kdtree; 

class KDTreeLearner
	:public SimpleTFGeneralizer, public matlab::MatlabDrawer
{
public:

	KDTreeLearner(MREAgent* p, int an, int od, taskspec_t& spec); 
	virtual ~KDTreeLearner(); 
	virtual void batchLearn( list<Transition>& history); 

	virtual void drawGrids(); 
	virtual void draw(){drawGrids();}


	double getKnownness(Observation st, Action a); 

private:
	void drawGridsEX(KNode* node, matlab::MatlabMatrix<double>& storage, int& index); 

};

#endif

